﻿// 10127.  最大数.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>

/*
https://loj.ac/p/10127

题目描述
原题来自：JSOI 2008

给定一个正整数数列 a_1, a_2, a_3, \cdots , a_n，每一个数都在 0\sim p – 1 之间。可以对这列数进行两种操作：

添加操作：向序列后添加一个数，序列长度变成 n + 1；
询问操作：询问这个序列中最后 L 个数中最大的数是多少。
程序运行的最开始，整数序列为空。写一个程序，读入操作的序列，并输出询问操作的答案。

输入格式
第一行有两个正整数 m,p，意义如题目描述；

接下来 m 行，每一行表示一个操作。如果该行的内容是 Q L，则表示这个操作是询问序列中最后 L 个数的最大数是多少；如果是 A t，则表示向序列后面加一个数，加入的数是 (t+a)\bmod p。其中，t 是输入的参数，a 是在这个添加操作之前最后一个询问操作的答案（如果之前没有询问操作，则 a = 0）。

第一个操作一定是添加操作。对于询问操作，L\gt 0 且不超过当前序列的长度。

输出格式
对于每一个询问操作，输出一行。该行只有一个数，即序列中最后 L 个数的最大数。

10 100
A 97
Q 1
Q 1
A 17
Q 2
A 63
Q 1
Q 1
Q 3
A 99

97
97
97
60
60
97


最后的序列是 97,14,60,96。

数据范围与提示
对于全部数据，1<= m<= 2X 10^5,1<= p<= 2X 10^9,0<= t< p。
*/

int main()
{
    std::cout << "Hello World!\n";
}

 